Receiver structures for spatial spreading with space-time or space-frequency transmit diversity

ABSTRACT

A receiving entity obtains received symbols for a data transmission having at least one data symbol stream sent with space-time transmit diversity (STTD). The receiving entity derives an overall channel response matrix in accordance with the STTD encoding scheme used for the data transmission, derives a spatial filter matrix based on the overall channel response matrix, and performs spatial matched filtering on a vector of received symbols for each 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval. The receiving entity may perform post-processing (e.g., conjugation) on the detected symbols if needed. Alternatively, the receiving entity derives a spatial filter matrix based on an effective channel response matrix, performs spatial matched filtering on the received symbols for each symbol period to obtain detected symbols for that symbol period, and combines multiple estimates obtained for each data symbol sent with STTD.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present application for patent claims priority to Provisional Application Ser. No. 60/607,371, entitled “Steering Diversity with Space-Time Transmit Diversity for a Wireless Communication System,” filed Sep. 3, 2004; and Provisional Application Ser. No. 60/608,226, entitled “Steering Diversity with Space-Time and Space-Frequency Transmit Diversity Schemes for a Wireless Communication System,” filed Sep. 8, 2004, all assigned to the assignee hereof and hereby expressly incorporated by reference herein.

BACKGROUND

I. Field

The present invention relates generally to communication, and more specifically to techniques for processing data in a multiple-antenna communication system.

II. Background

A multi-antenna communication system employs multiple (N_(T)) transmit antennas and one or more (N_(R)) receive antennas for data transmission. The N_(T) transmit antennas may be used to increase system throughput by transmitting different data from the antennas or to improve reliability by transmitting data redundantly.

In the multi-antenna communication system, a propagation path exists between each pair of transmit and receive antennas. N_(T)·N_(R) different propagation paths are formed between the N_(T) transmit antennas and the N_(R) receive antennas. These propagation paths may experience different channel conditions (e.g., different fading, multipath, and interference effects) and may achieve different signal-to-noise-and-interference ratios (SNRs). The channel responses of the N_(T)·N_(R) propagation paths may thus vary from path to path. For a dispersive communication channel, the channel response for each propagation path also varies across frequency. If the channel conditions vary over time, then the channel responses for the propagation paths likewise vary over time.

Transmit diversity refers to the redundant transmission of data across space, frequency, time, or a combination of these three dimensions to improve reliability for the data transmission. One goal of transmit diversity is to maximize diversity for the data transmission across as many dimensions as possible to achieve robust performance. Another goal is to simplify the processing for transmit diversity at both a transmitter and a receiver.

There is therefore a need in the art for techniques to process data for transmit diversity in a multi-antenna communication system.

SUMMARY

Techniques for transmitting and receiving data using a combination of transmit diversity schemes to improve performance are described herein. In an embodiment, a transmitting entity processes one or more (N_(D)) data symbol streams and generates multiple (N_(C)) coded symbol streams. Each data symbol stream may be sent as a single coded symbol stream or as two coded symbol streams using, e.g., space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD). The transmitting entity may perform spatial spreading on the N_(C) coded symbol streams and generate N_(T) transmit symbol streams. Additionally or alternatively, the transmitting entity may perform continuous beamforming on the N_(T) transmit symbol streams in either the time domain or the frequency domain. These various transmit diversity schemes are described below.

A receiving entity obtains received symbols for the data transmission sent by the transmitting entity. The receiving entity derives an effective channel response matrix, e.g., based on received pilot symbols. This matrix includes the effects of the spatial spreading and/or continuous beamforming, if performed by the transmitting entity. In an embodiment, the receiving entity forms an overall channel response matrix based on the effective channel response matrix and in accordance with the STTD encoding scheme used by the transmitting entity. The receiving entity then derives a spatial filter matrix based on the overall channel response matrix and in accordance with, e.g., a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique. The receiving entity then performs spatial processing on a vector of received symbols for each 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval. The detected symbols are estimates of the transmitted coded symbols. The receiving entity performs post-processing (e.g., conjugation) on the detected symbols, if needed, to obtain recovered data symbols, which are estimates of the transmitted data symbols.

In another embodiment, the receiving entity derives a spatial filter matrix based on the effective channel response matrix. The receiving entity then performs spatial processing on the received symbols for each symbol period with the spatial filter matrix to obtain detected symbols for that symbol period. The receiving entity also performs post-processing on the detected symbols, if needed, to obtain estimates of data symbols. The receiving entity combines multiple estimates obtained for each data symbol sent with STTD and generates a single estimate for the data symbol.

Various aspects and embodiments of the invention are described in further detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a block diagram of a multi-antenna transmitting entity.

FIG. 2 shows a block diagram of a single-antenna receiving entity and a multi-antenna receiving entity.

FIG. 3 shows a block diagram of a receive (RX) spatial processor and an RX STTD processor for the MMSE and CCMI techniques.

FIG. 4 shows a block diagram of an RX spatial processor and an RX STTD processor for the partial-MMSE and partial-CCMI techniques.

FIG. 5 shows a process for receiving data with the MMSE or CCMI technique.

FIG. 6 shows a process for receiving data with the partial-MMSE or partial-CCMI technique.

FIG. 7 shows an exemplary protocol data unit (PDU).

DETAILED DESCRIPTION

The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.

The data transmission and reception techniques described herein may be used for multiple-input single-output (MISO) and multiple-input multiple-output (MIMO) transmissions. A MISO transmission utilizes multiple transmit antennas and a single receive antenna. A MIMO transmission utilizes multiple transmit antennas and multiple receive antennas. These techniques may also be used for single-carrier and multi-carrier communication systems. Multiple carriers may be obtained with orthogonal frequency division multiplexing (OFDM), some other multi-carrier modulation techniques, or some other construct. OFDM effectively partitions the overall system bandwidth into multiple (N_(F)) orthogonal frequency subbands, which are also called tones, subcarriers, bins, and frequency channels. With OFDM, each subband is associated with a respective subcarrier that may be modulated with data.

Transmit diversity may be achieved using various schemes including STTD, SFTD, OTD, spatial spreading, continuous beamforming, and so on. STTD transmits each pair of data symbols from two antennas on one subband in two symbol periods to achieve space and time diversity. SFTD transmits each pair of data symbols from two antennas on two subbands in one symbol period to achieve space and frequency diversity. OTD transmits each pair of data symbols from two antennas on one subband in two symbol periods using two orthogonal codes to achieve space and time diversity. As used herein, a data symbol is a modulation symbol for traffic/packet data, a pilot symbol is a modulation symbol for pilot (which is data that is known a priori by both the transmitting and receiving entities), a modulation symbol is a complex value for a point in a signal constellation for a modulation scheme (e.g., M-PSK or M-QAM), and a symbol is any complex value.

Spatial spreading refers to the transmission of a symbol from multiple transmit antennas simultaneously, possibly with different amplitudes and/or phases determined by a steering vector used for that symbol. Spatial spreading is also called steering diversity, transmit steering, pseudo-random transmit steering, and so on. Spatial spreading may be used in combination with STTD, SFTD, OTD, and/or continuous beamforming to improve performance.

Continuous beamforming refers to the use of different beams across the N_(F) subbands. The beamforming is continuous in that the beams change in a gradual instead of abrupt manner across the subbands. Continuous beamforming may be performed in the frequency domain by multiplying the symbols for each subband with a beamforming matrix for that subband. Continuous beamforming may also be performed in the time domain by applying different cyclic or circular delays for different transmit antennas.

Transmit diversity may also be achieved using a combination of schemes. For example, transmit diversity may be achieved using a combination of either STTD or SFTD and either spatial spreading or continuous beamforming. As another example, transmit diversity may be achieved using a combination of STTD or SFTD, spatial spreading, and continuous beamforming.

FIG. 1 shows a block diagram of an embodiment of a multi-antenna transmitting entity 110. For this embodiment, transmitting entity 110 uses a combination of STTD, spatial spreading, and continuous beamforming for data transmission. A transmit (TX) data processor 112 receives and processes N_(D) data streams and provides N_(D) data symbol streams, where N_(D)≧1. TX data processor 112 may process each data stream independently or may jointly process multiple data streams together. For example, TX data processor 112 may format, scramble, encode, interleave, and symbol map each data stream in accordance with a coding and modulation scheme selected for that data stream. A TX STTD processor 120 receives the N_(D) data symbol streams, performs STTD processing or encoding on at least one data symbol stream, and provides N_(C) streams of coded symbols, where N_(C)≧N_(D). In general, TX STTD processor 120 may process one or more data symbol streams with STTD, SFTD, OTD, or some other transmit diversity scheme. Each data symbol stream may be sent as one coded symbol stream or multiple coded symbol streams, as described below.

A spatial spreader 130 receives and multiplexes the coded symbols with pilot symbols, performs spatial spreading by multiplying the coded and pilot symbols with steering matrices, and provides N_(T) transmit symbol streams for the N_(T) transmit antennas, where N_(T)≧N_(C). Each transmit symbol is a complex value to be sent on one subband in one symbol period from one transmit antenna. N_(T) modulators (Mod) 132 a through 132 t receive the N_(T) transmit symbol streams. For an OFDM system, each modulator 132 performs OFDM modulation on its transmit symbol stream and provides a stream of time-domain samples. Each modulator 132 may also apply a cyclic delay for each OFDM symbol. N_(T) modulators 132 a through 132 t provide N_(T) streams of time-domain samples to N_(T) transmitter units (TMTR) 134 a through 134 t, respectively. Each transmitter unit 134 conditions (e.g., converts to analog, amplifies, filters, and frequency upconverts) its sample stream and generates a modulated signal. N_(T) modulated signals from N_(T) transmitter units 134 a through 134 t are transmitted from N_(T) transmit antennas 136 a through 136 t, respectively.

Controller 140 controls the operation at transmitting entity 110. Memory unit 142 stores data and/or program codes used by controller 140.

FIG. 2 shows a block diagram of an embodiment of a single-antenna receiving entity 150 x and a multi-antenna receiving entity 150 y. At single-antenna receiving entity 150 x, an antenna 152 x receives the N_(T) transmitted signals and provides a received signal to a receiver unit (RCVR) 154 x. Receiver unit 154 x performs processing complementary to that performed by transmitter units 134 and provides a stream of received samples to a demodulator (Demod) 156 x. For an OFDM system, demodulator 156 x performs OFDM demodulation on the received samples to obtain received symbols, provides received data symbols to a detector 158, and provides received pilot symbols to a channel estimator 162. Channel estimator 162 derives an effective channel response estimate for a single-input single-output (SISO) channel between transmitting entity 110 and receiving entity 150 x for each subband used for data transmission. Detector 158 performs data detection on the received data symbols for each subband based on the effective SISO channel response estimate for that subband and provides recovered data symbols for the subband. An RX data processor 160 processes (e.g., symbol demaps, deinterleaves, and decodes) the recovered data symbols and provides decoded data.

At multi-antenna receiving entity 150 y, N_(R) antennas 152 a through 152 r receive the N_(T) transmitted signals, and each antenna 152 provides a received signal to a respective receiver unit 154. Each receiver unit 154 processes its received signal and provides a received sample stream to an associated demodulator 156. Each demodulator 156 performs OFDM demodulation on its received sample stream, provides received data symbols to an RX spatial processor 170, and provides received pilot symbols to a channel estimator 166. Channel estimator 166 derives a channel response estimate for the actual or effective MIMO channel between transmitting entity 110 and receiving entity 150 y for each subband used for data transmission. A matched filter generator 168 derives a spatial filter matrix for each subband based on the channel response estimate for that subband. RX spatial processor 170 performs receiver spatial processing (or spatial matched filtering) on the received data symbols for each subband with the spatial filter matrix for that subband and provides detected symbols for the subband. An RX STTD processor 172 performs post-processing on the detected symbols and provides recovered data symbols. An RX data processor 174 processes (e.g., symbol demaps, deinterleaves, and decodes) the recovered data symbols and provides decoded data.

Controllers 180 x and 180 y control the operation at receiving entities 150 x and 150 y, respectively. Memory units 182 x and 182 y store data and/or program codes used by controllers 180 x and 180 y, respectively.

1. Transmitter Processing

Transmitting entity 110 may transmit any number of data symbol streams with STTD and any number of data symbol streams without STTD, depending on the number of transmit and receive antennas available for data transmission. The STTD encoding for one data symbol stream may be performed as follows. For each pair of data symbols s_(a) and s_(b) to be sent in two symbol periods of the data symbol stream, TX STTD processor 120 generates two vectors s ₁=[s_(a) s_(b)]^(T) and s ₂=[s*_(b) −s*_(a)]^(T), where “*” denotes the complex conjugate and “^(T)” denotes the transpose. Alternatively, TX STTD processor 120 may generate two vectors s ₁=[s_(a) −s_(b)]^(T) and s ₂=[s_(b) s*_(a)]^(T) for each pair of data symbols s_(a) and s_(b). For both STTD encoding schemes, each vector s _(t), for t=1, 2, includes two coded symbols to be sent from N_(T) transmit antennas in one symbol period, where N_(T)≧2. Vector s ₁ is sent in the first symbol period, and vector s ₂ is sent in the next symbol period. Each data symbol is included in both vectors and is thus sent over two symbol periods. The m-th coded symbol stream is sent in the m-th element of the two vectors s ₁ and s ₂. For clarity, the following description is for the STTD encoding scheme with s ₁=[s_(a) s_(b)] ^(T) and s ₂=[s*_(b) −s*_(a)]^(T). For this STTD encoding scheme, the first coded symbol stream includes coded symbols s_(a) and s*_(b), and the second coded symbol stream includes coded symbols s_(b) and −s*_(a).

Table 1 lists four configurations that may be used for data transmission. An N_(D)×N_(C) configuration denotes the transmission of N_(D) data symbol streams as N_(C) coded symbol streams, where N_(D)≧1 and N_(C)≧N_(D). The first column identifies the four configurations. For each configuration, the second column indicates the number of data symbol streams being sent, and the third column indicates the number of coded symbol streams. The fourth column lists the N_(D) data symbol streams for each configuration, the fifth column lists the coded symbol stream(s) for each data symbol stream, the sixth column gives the coded symbol to be sent in the first symbol period (t=1) for each coded symbol stream, and the seventh column gives the coded symbol to be sent in the second symbol period (t=2) for each coded symbol stream. The number of data symbols sent in each 2-symbol interval is equal to twice the number of data symbol streams. The eighth column indicates the number of transmit antennas required for each configuration, and the ninth column indicates the number of receive antennas required for each configuration. As shown in Table 1, for each data symbol stream that is sent as one coded symbol stream without STTD, the data symbol sent in the second symbol period (t=2) is conjugated to match the conjugation performed on the data symbols in the STTD encoded data symbol stream.

TABLE 1 Num Data Num Coded Data Coded Coded Symbol Coded Symbol Req Num Req Num Symbol Streams Symbol Streams Symbol Symbol (t = 1) (t = 2) TX Ants RX Ants Config N_(D) N_(C) Stream Stream s₁ s₂ N_(T) N_(R) 1 × 2 1 2 1 1 s_(a)   s_(b)* N_(T) ≧ 2 N_(R) ≧ 1 2 s_(b) −s_(a)* 2 × 3 2 3 1 1 s_(a)   s_(b)* N_(T) ≧ 3 N_(R) ≧ 2 2 s_(b) −s_(a)* 2 3 s_(c)   s_(d)* 2 × 4 2 4 1 1 s_(a)   s_(b)* N_(T) ≧ 4 N_(R) ≧ 2 2 s_(b) −s_(a)* 2 3 s_(c)   s_(d)* 4 s_(d) −s_(c)* 3 × 4 3 4 1 1 s_(a)   s_(b)* N_(T) ≧ 4 N_(R) ≧ 3 2 s_(b) −s_(a)* 2 3 s_(c)   s_(d)* 3 4 s_(e)   s_(f)*

As an example, for the 2×3 configuration, two data symbol streams are sent as three coded symbol streams. The first data symbol stream is STTD encoded to generate two coded symbol streams. The second data symbol stream is sent without STTD as the third coded symbol stream. Coded symbols s_(a), s_(b) and s_(c) are sent from at least three transmit antennas in the first symbol period, and coded symbols s*_(b), −s*_(a) and s*_(d) are sent in the second symbol period. A receiving entity uses at least two receive antennas to recover the two data symbol streams.

Table 1 shows four configurations that may be used for data transmission whereby each configuration has at least one STTD encoded data symbol stream. Other configurations may also be used for data transmission. In general, any number of data symbol streams may be sent as any number of coded symbol streams from any number of transmit antennas, where N_(D)≧1, N_(C)≧N_(D), N_(T)≧N_(C), and N_(R)≧N_(D).

The transmitting entity may process the coded symbols for spatial spreading and continuous beamforming as follows: x _(t)(k)= B (k)· V (k)· G (k)· s _(t)(k), for t=1, 2,  Eq (1) where

-   -   s _(t)(k) is an N_(C)×1 vector with N_(C) coded symbols to be         sent on subband k in symbol period t;     -   G(k) is an N_(C)×N_(C) diagonal matrix with N_(C) gain values         along the diagonal for the N_(C) coded symbols in s _(t)(k) and         zeros elsewhere;     -   V(k) is an N_(T)×N_(C) steering matrix for spatial spreading for         subband k;     -   B(k) is an N_(T)×N_(T) diagonal matrix for continuous         beamforming for subband k; and     -   x _(t)(k) is an N_(T)×1 vector with N_(T) transmit symbols to be         sent from the N_(T) transmit antennas on subband k in symbol         period t.

Vector s ₁ contains N_(C) coded symbols to be sent in the first symbol period, and vector s ₂ contains N_(C) coded symbols to be sent in the second symbol period. Vectors s ₁ and s ₂ may be formed as shown in Table 1 for the four configurations. For example, s ₁=[s_(a) s_(b) s_(c)]^(T) and s ₂=[s*_(b) −s*_(a) s*_(d)]^(T) for the 2×3 configuration.

The gain matrix G(k) determines the amount of transmit power to use for each of the N_(C) coded symbol streams. The total transmit power available for transmission may be denoted as P_(total). If equal transmit power is used for the N_(C) coded symbol streams, then the diagonal elements of G(k) have the same value, which is √{square root over (P_(total)/N_(C))}. If equal transmit power is used for the N_(D) data symbol streams, then the diagonal elements of G(k) may or may not be equal depending on the configuration. The N_(C) gain values in G(k) may be defined to achieve equal transmit power for the N_(D) data symbol streams being sent simultaneously. As an example, for the 2×3 configuration, the first data symbol stream is sent as two coded symbol streams and the second data symbol stream is sent as one coded symbol stream. To achieve equal transmit power for the two data symbol streams, a 3×3 gain matrix G(k) may include gain values of √{square root over (P_(total)/4)}, √{square root over (P_(total)/4)}, and √{square root over (P_(total)/2)} along the diagonal for the three coded symbol streams. Each coded symbol in the third coded symbol stream is then scaled by √{square root over (P_(total)/2)} and is transmitted with twice the power as the other two coded symbols sent in the same symbol period. The N_(C) coded symbols for each symbol period may also be scaled to utilize the maximum transmit power available for each transmit antenna. In general, the elements of G(k) may be selected to utilize any amount of transmit power for the N_(C) coded symbol streams and to achieve any desired SNRs for the N_(D) data symbol streams. The power scaling for each coded symbol stream may also be performed by scaling the columns of the steering matrix V(k) with appropriate gains.

A given data symbol stream (denoted as {s}) may be sent as one coded symbol stream (denoted as {{tilde over (s)}}) in other manners. In one embodiment, the gain matrix G(k) contains ones along the diagonal, and coded symbol stream {{tilde over (s)}} is transmitted at the same power level as the other coded symbol streams. For this embodiment, data symbol stream {s} is transmitted at lower transmit power than an STTD encoded data symbol stream and achieves a lower received SNR at the receiving entity. The coding and modulation for data symbol stream {s} may be selected to achieve the desired performance, e.g., the desired packet error rate. In another embodiment, each data symbol in data symbol stream {s} is repeated and transmitted in two symbol periods. As an example, for the 2×3 configuration, data symbol s_(c) is sent in two symbol periods, then data symbol s_(d) is sent in two symbol periods, and so on. Similar received SNRs for all N_(D) data symbol streams may simplify processing (e.g., encoding) at both the transmitting and receiving entities.

The steering matrix V(k) spatially spreads the N_(C) coded symbols for each symbol period such that each coded symbol is transmitted from all N_(T) transmit antennas and achieves spatial diversity. Spatial spreading may be performed with various types of steering matrices, such as Walsh matrices, Fourier matrices, pseudo-random matrices, and so on, which may be generated as described below. The same steering matrix V(k) is used for the two vectors s ₁(k) and s ₂(k) for each subband k. The same or different steering matrices may be used for different subbands. Different steering matrices may be used for different time intervals, where each time interval spans an integer multiple of two symbol periods for STTD.

The matrix B(k) performs continuous beamforming in the frequency domain. For an OFDM system, a different beamforming matrix may be used for each subband. The beamforming matrix for each subband k may be a diagonal matrix having the following form:

$\begin{matrix} {{{\underset{\_}{B}(k)} = \begin{bmatrix} {b_{1}(k)} & 0 & \cdots & 0 \\ 0 & {b_{2}(k)} & \cdots & 0 \\ \vdots & \vdots & ⋰ & \vdots \\ 0 & 0 & \cdots & {b_{N_{T}}(k)} \end{bmatrix}},{{{for}\mspace{14mu} k} = {1\mspace{11mu}\ldots\mspace{11mu} N_{F}}},} & {{Eq}\mspace{14mu}(2)} \end{matrix}$ where b_(i)(k) is a weight for subband k of transmit antenna i. The weight b_(i)(k) may be defined as: b _(i)(k)=e ^(−j2π·ΔT(i)·l(k)·Δf), for i=1 . . . N _(T) and k=1 . . . N _(F),  Eq (3) where

-   -   ΔT(i) is the time delay on transmit antenna i; and     -   l(k)·Δf is the actually frequency that corresponds to subband         index k.         For example, if N_(F)=64, then subband index k goes from 1 to         64, and l(k) may map k to −32 to +31, respectively. Δf denotes         the frequency spacing between adjacent subbands. For example, if         the overall system bandwidth is 20 MHz and N_(F)=64, then Δf=20         MHz/64=3.125 kHz. l(k)·Δf provides the actual frequency (in         Hertz) for each value of k. The weights b_(i)(k) shown in         equation (3) correspond to a progressive phase shift across the         N_(F) total subbands of each transmit antenna, with the phase         shift changing at different rates for the N_(T) transmit         antennas. These weights effectively form a different beam for         each subband.

Continuous beamforming may also be performed in the time domain as follows. For each symbol period, an N_(F)-point inverse discrete Fourier transform (IDFT) is performed on N_(F) transmit symbols for each transmit antenna i to generate N_(F) time-domain samples for that transmit antenna. The N_(F) time-domain samples for each transmit antenna i are then cyclically or circularly delayed with a delay of T_(i). For example, T_(i) may be defined as: T_(i)=ΔT·(i−1), for i=1 . . . N_(T), where ΔT may be equal to one sample period, a fraction of a sample period, or more than one sample period. The time-domain samples for each antenna are thus cyclically delayed by a different amount.

For simplicity, the following description is for one subband, and the subband index k is dropped from the notations. The receiver spatial processing for each subband may be performed in the same manner, albeit with a spatial filter matrix obtained for that subband. The gain matrix G(k) does not affect the receiver spatial processing and is omitted from the following description for clarity. The gain matrix G(k) may also be viewed as being incorporated in the vectors s ₁ and s ₂.

2. Single-Antenna Receiver Processing

A single-antenna receiving entity may receive a data transmission sent using the 1×2 configuration. The received symbols from the single receive antenna may be expressed as: r _(t) =h·x _(t) +n _(t) =h·B·V·s _(t) +n _(t) =h _(eff) ·s _(t) +n _(t), for t=1, 2,  Eq (4) where

-   -   r_(t) is a received symbol for symbol period t;     -   h is a 1×N_(T) channel response row vector, which is h=[h₁, h₂,         . . . , h_(N) _(T) ];     -   h _(eff) is a 1×2 effective channel response row vector for the         1×2 configuration, which is h _(eff)=h·B·V=[h_(eff,1)         h_(eff,2)]; and     -   n_(t) is the noise for symbol period t.         The MISO channel response h is assumed to be constant over the         two symbol periods for vectors s ₁ and s ₂.

The single-antenna receiving entity may derive estimates of the two data symbols s_(a) and s_(b), as follows:

$\begin{matrix} {{{{\hat{s}}_{a} = {\frac{{{\hat{h}}_{{eff},1}^{*} \cdot r_{1}} - {{\hat{h}}_{{eff},2} \cdot r_{2}^{*}}}{\beta^{\prime}} = {s_{a} + n_{a}^{\prime}}}},{and}}{{{\hat{s}}_{b} = {\frac{{{\hat{h}}_{{eff},2}^{*} \cdot r_{1}} + {{\hat{h}}_{{eff},1} \cdot r_{2}^{*}}}{\beta^{\prime}} = {s_{b} + n_{b}^{\prime}}}},}} & {{Eq}\mspace{14mu}(5)} \end{matrix}$ where

-   -   ĥ_(eff,m) is an estimate of h_(eff,m), for m=1, 2;     -   β′=|ĥ_(eff,1)|²+|ĥ_(eff,2)|²; and     -   n′_(a) and n′_(b) are post-processed noise for detected symbols         ŝ_(a) and ŝ_(b), respectively.         The receiving entity may also derive the detected symbols using         MMSE processing described below.

3. Multi-Antenna Receiver Processing

A multi-antenna receiving entity may receive a data transmission sent using any of the configurations supported by the number of receive antennas available at that receiving entity, as shown in Table 1. The received symbols from the multiple receive antennas may be expressed as: r _(t) =H·x _(t) +n _(t) =H·B·V·s _(t) +n _(t) =H _(eff) ·s _(t) +n _(t), for t=1, 2,  Eq (6) where

-   -   r _(t) is an N_(R)×1 vector with N_(R) received symbols for         symbol period t;     -   H is an N_(R)×N_(T) channel response matrix;     -   H _(eff) is an N_(R)×N_(C) effective channel response matrix;         and     -   n _(t) is a noise vector for symbol period t.         The receiving entity can typically obtain an estimate of H based         on a pilot received from the transmitting entity. The receiving         entity uses H _(eff) to recover s _(t).

The effective channel response matrix H _(eff) may be expressed as: H _(eff) =H·B·V,  Eq (7) and has the following form:

$\begin{matrix} {{{\underset{\_}{H}}_{eff} = \begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & \cdots & h_{{eff},1,N_{C}} \\ h_{{eff},2,1} & h_{{eff},2,2} & \cdots & h_{{eff},2,N_{C}} \\ \vdots & \vdots & ⋰ & \vdots \\ h_{{eff},N_{R},1} & h_{{eff},N_{R},2} & \cdots & h_{{eff},N_{R},N_{C}} \end{bmatrix}},} & {{Eq}\mspace{14mu}(8)} \end{matrix}$ where h_(eff,j,m) is the channel gain for coded symbol stream m at receive antenna j. The effective channel response matrix H _(eff) is dependent on the configuration used for data transmission and the number of receive antennas. The MIMO channel response matrix H and the effective channel response matrix H _(eff) are assumed to be constant over two symbol periods for vectors s ₁ and s ₂.

For the 1×2 configuration, the effective channel response matrix is an N_(R)×2 matrix that may be given as: H _(eff)=H·B·V=[h _(eff,1) h _(eff,2)], where h _(eff,m) is an effective channel response vector for coded symbol stream m. The multi-antenna receiving entity may derive estimates of the two data symbols s_(a) and s_(b), as follows:

$\begin{matrix} {{{{\hat{s}}_{a} = {\frac{{{\hat{\underset{\_}{h}}}_{{eff},1}^{H} \cdot {\underset{\_}{r}}_{1}} - {{\underset{\_}{r}}_{2}^{H} \cdot {\hat{\underset{\_}{h}}}_{{eff},2}}}{\beta^{''}} = {s_{a} = n_{a}^{''}}}},{and}}{{{\hat{s}}_{b} = {\frac{{{\hat{\underset{\_}{h}}}_{{eff},2}^{H} \cdot {\underset{\_}{r}}_{1}} + {{\underset{\_}{r}}_{2}^{H} \cdot {\hat{\underset{\_}{h}}}_{{eff},1}}}{\beta^{''}} = {s_{b} = n_{b}^{''}}}},}} & {{Eq}\mspace{14mu}(9)} \end{matrix}$ where

-   -   ĥ _(eff,m) is an estimate of h _(eff,m), for m=1, 2;     -   β″=∥ĥ _(eff,1)∥²+∥ĥ _(eff,2)∥²;     -   “^(H)” denotes the conjugate transpose; and     -   n″_(a) and n″_(b) are post-processed noise for detected symbols         ŝ_(a) and ŝ_(b), respectively.         The data symbols s_(a) and s_(b) may also be recovered using         other receiver spatial processing techniques, as described         below.

To facilitate the receiver spatial processing, a single data vector s may be formed for the 2N_(D) data symbols included in vectors s ₁ and s ₂ sent in two symbol periods. A single received vector r may also be formed for the 2N_(R) received symbols included in vectors r ₁ and r ₂ obtained in two symbol periods. The received vector r may then be expressed as: r=H _(all) ·s+n _(all),  Eq (10) where

-   -   r is a 2N_(R)×1 vector with 2N_(R) received symbols obtained in         two symbol periods;     -   s is a 2N_(D)×1 vector with 2N_(D) data symbols sent in two         symbol periods;     -   H _(all) is a 2N_(R)×2N_(D) overall channel response matrix         observed by the data symbols in s; and     -   n _(all) is a noise vector for the 2N_(D) data symbols.         The overall channel response matrix H _(all) contains twice the         number of rows as the effective channel response matrix H _(eff)         and includes the effects of STTD, spatial spreading, and         continuous beamforming performed by the transmitting entity. The         elements of H _(all) are derived based on the elements of H         _(eff), as described below.

For the 2×3 configuration, the transmitting entity generates vectors s ₁=[s_(a) s_(b) s_(c)]^(T) and s ₂=[s*_(b) −s*_(a) s*_(d)]^(T) for four data symbols s_(a), s_(b), s_(c) and s_(d) to be sent in two symbol periods for two data symbol streams, as shown in Table 1. Each vector s _(t) contains three coded symbols to be sent from the N_(T) transmit antennas in one symbol period, where N_(T)≧3 for the 2×3 configuration.

If the receiving entity is equipped with two receive antennas (N_(R)=2), then r _(t) is a 2×1 vector with two received symbols for symbol period t, H is a 2×N_(T) channel response matrix, and H _(eff) is a 2×3 effective channel response matrix. The effective channel response matrix for the 2×3 configuration with two receive antennas, which is denoted as H _(eff) ^(2/2×3), may be expressed as:

$\begin{matrix} {{\underset{\_}{H}}_{eff}^{{2/2} \times 3} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(11)} \end{matrix}$

The received symbols for the first symbol period are denoted as r ₁=[r_(1,1) r_(2,1)]^(T), and the received symbols for the second symbol period are denoted as r ₂=[r_(1,2) r_(2,2)]^(T), where r_(j,t) is the received symbol from receive antenna j in symbol period t. These four received symbols may be expressed as: r _(1,1) =+h _(eff,1,1) ·s _(a) +h _(eff,1,2) ·s _(b) +h _(eff,1,3) ·s _(c) +n _(1,1),  Eq (12a) r _(2,1) =+h _(eff,2,1) ·s _(a) +h _(eff,2,2) ·s _(b) +h _(eff,2,3) ·s _(c) +n _(2,1),  Eq (12b) r _(1,2) =−h _(eff,1,2) ·s* _(a) +h _(eff,1,1) ·s* _(b) +h _(eff,1,3) ·s* _(d) +n _(1,2), and  Eq (12c) r _(2,2) =−h _(eff,2,2) ·s* _(a) +h _(eff,2,1) ·s* _(b) +h _(eff,2,3) ·s* _(d) +n _(2,2).  Eq (12d)

For the 2×3 configuration with two receive antennas, the data vector s may be formed as s=[s_(a) s_(b) s_(c) s_(d)]^(T), the received vector r may be formed as r=[r_(1,1) r_(2,1) r*_(1,2) r*_(2,2)]^(T), and the overall channel response matrix H _(all) ^(2/2×3) may be expressed as:

$\begin{matrix} {{\underset{\_}{H}}_{all}^{{2/2} \times 3} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & 0 \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & 0 \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} & 0 & h_{{eff},1,3}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} & 0 & h_{{eff},2,3}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(13)} \end{matrix}$ With the above formulation, r may be expressed based on H _(all) ^(2/2×3) and s, as shown in equation (10). The matrix H _(all) ^(2/2×3) is formed from equation set (12) and using the property: r=h·s*

r*=h*·s. As shown in equation (13), the first two rows of H _(all) ^(2/2×3) contain all of the elements of H _(eff) ^(2/2×3), and the last two rows of H _(all) ^(2/2×3) contain the elements of H _(eff) ^(2/2×3) but rearranged and transformed (i.e., conjugated and/or inverted) due to the STTD encoding on the data symbols.

For the 2×4 configuration, the transmitting entity generates vectors s ₁=[s_(a) s_(b) s_(c) s_(d)] and s ₂=[s*_(b) −s*_(a) s*_(d) −s*_(c)]^(T) for two pairs of data symbols (s_(a) and s_(b)) and (s_(c) and s_(d)) to be sent in two symbol periods for two data symbol streams. Each vector s _(t) includes four coded symbols to be sent from the N_(T) transmit antennas in one symbol period, where N_(T)≧4 for the 2×4 configuration.

If the receiving entity is equipped with two receive antennas (N_(R)=2), then r _(t) is a 2×1 vector with two received symbols for symbol period t, H is a 2×N_(T) channel response matrix, and H _(eff) is a 2×4 effective channel response matrix. The effective channel response matrix for the 2×4 configuration with two receive antennas, which is denoted as H _(eff) ^(2/2×4), may be expressed as:

$\begin{matrix} {{\underset{\_}{H}}_{eff}^{{2/2} \times 4} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & h_{{eff},1,4} \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & h_{{eff},2,4} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(15)} \end{matrix}$

The received symbols from the two receive antennas in two symbol periods may be expressed as: r _(1,1) =+h _(eff,1,1) ·s _(a) +h _(eff,1,2) ·s _(b) +h _(eff,1,3) ·s _(c) +h _(eff,1,4) ·s _(d) +n _(1,1),  Eq (15a) r _(2,1) =+h _(eff,2,1) ·s _(a) +h _(eff,2,2) ·s _(b) +h _(eff,2,3) ·s _(c) +h _(eff,2,4) ·s _(d) +n _(2,1),  Eq (15b) r _(1,2) =−h _(eff,1,2) ·s* _(a) +h _(eff,1,1) ·s* _(b) −h _(eff,1,4) ·s* _(c) +h _(eff,1,3) ·s* _(d) +n _(1,2), and  Eq (15c) r _(2,2) =−h _(eff,2,2) ·s* _(a) +h _(eff,2,1) ·s* _(b) −h _(eff,2,4) ·s* _(c) +h _(eff,2,3) ·s* _(d) +n _(2,2).  Eq (15d)

For the 2×4 configuration with two receive antennas, the data vector s may be formed as s=[s_(a) s_(b) s_(c) s_(d)]^(T) the received vector r may be formed as r=[r_(1,1) r_(2,1) r*_(1,2) r*_(2,2)]^(T) and the overall channel response matrix H _(all) ^(2/2×4) may be expressed as:

$\begin{matrix} {{\underset{\_}{H}}_{all}^{{2/2} \times 4} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & h_{{eff},1,4} \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & h_{{eff},2,4} \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} & {- h_{{eff},1,4}^{*}} & h_{{eff},1,3}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} & {- h_{{eff},2,4}^{*}} & h_{{eff},2,3}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(16)} \end{matrix}$ As shown in equation (16), the first two rows of H _(all) ^(2/2×4) are equal to H _(eff) ^(2/2×4), and the last two rows of H _(all) ^(2/2×4) contain rearranged and transformed elements of H _(eff) ^(2/2×4).

In general, the received vector r for all configurations may be expressed as: r=[r_(1,1) . . . r_(N) _(R) _(,1) r*_(1,2) . . . r*_(N) _(R) _(,2)]^(T).  Eq (17) The data vector s is dependent on the configuration used for data transmission. The overall channel response matrix H _(all) is dependent on the configuration and the number of receive antennas.

For the 1×2 configuration, the vector s and the matrix H _(all) may be expressed as:

$\begin{matrix} {{{\underset{\_}{s}}_{1 \times 2} = \left\lbrack {s_{a}\mspace{20mu} s_{b}} \right\rbrack^{T}},{and}} & {{Eq}\mspace{14mu}(18)} \\ {{\underset{\_}{H}}_{all}^{1 \times 2} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} \\ h_{{eff},2,1} & h_{{eff},2,2} \\ \vdots & \vdots \\ h_{{eff},N_{R},1} & h_{{eff},N_{R},2} \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} \\ \vdots & \vdots \\ {- h_{{eff},N_{R},2}^{*}} & h_{{eff},N_{R},1}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(19)} \end{matrix}$

For the 2×3 configuration, the vector s and the matrix H _(all) may be expressed as:

$\begin{matrix} {{{\underset{\_}{s}}_{2 \times 3} = \left\lbrack {s_{a}\mspace{20mu} s_{b}\mspace{20mu} s_{c}\mspace{20mu} s_{d}} \right\rbrack^{T}},{and}} & {{Eq}\mspace{14mu}(20)} \\ {{\underset{\_}{H}}_{all}^{2 \times 3} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & 0 \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & 0 \\ \vdots & \vdots & \vdots & \vdots \\ h_{{eff},N_{R},1} & h_{{eff},N_{R},2} & h_{{eff},N_{R},3} & 0 \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} & 0 & h_{{eff},1,3}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} & 0 & h_{{eff},2,3}^{*} \\ \vdots & \vdots & \vdots & \vdots \\ {- h_{{eff},N_{R},2}^{*}} & h_{{eff},N_{R},1}^{*} & 0 & h_{{eff},N_{R},3}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(21)} \end{matrix}$

For the 2×4 configuration, the vector s and the matrix H _(all) may be expressed as:

$\begin{matrix} {{{\underset{\_}{s}}_{2 \times 4} = \left\lbrack {s_{a}\mspace{20mu} s_{b}\mspace{20mu} s_{c}\mspace{20mu} s_{d}} \right\rbrack^{T}},{and}} & {{Eq}\mspace{14mu}(22)} \\ {{\underset{\_}{H}}_{all}^{2 \times 4} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & h_{{eff},1,4} \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & h_{{eff},2,4} \\ \vdots & \vdots & \vdots & \vdots \\ h_{{eff},N_{R},1} & h_{{eff},N_{R},2} & h_{{eff},N_{R},3} & h_{{eff},N_{R},4} \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} & {- h_{{eff},1,4}^{*}} & h_{{eff},1,3}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} & {- h_{{eff},2,4}^{*}} & h_{{eff},2,3}^{*} \\ \vdots & \vdots & \vdots & \vdots \\ {- h_{{eff},N_{R},2}^{*}} & h_{{eff},N_{R},1}^{*} & {- h_{{eff},N_{R},4}^{*}} & h_{{eff},N_{R},3}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(23)} \end{matrix}$

For the 3×4 configuration, the vector s and the matrix H _(all) may be expressed as:

$\begin{matrix} {{{\underset{\_}{s}}_{3 \times 4} = \left\lbrack {s_{a}\mspace{20mu} s_{b}\mspace{20mu} s_{c}\mspace{20mu} s_{d}\mspace{20mu} s_{e}\mspace{20mu} s_{f}} \right\rbrack^{T}},{and}} & {{Eq}\mspace{14mu}(24)} \\ {{\underset{\_}{H}}_{all}^{3 \times 4} = {\begin{bmatrix} h_{{eff},1,1} & h_{{eff},1,2} & h_{{eff},1,3} & 0 & h_{{eff},1,4} & 0 \\ h_{{eff},2,1} & h_{{eff},2,2} & h_{{eff},2,3} & 0 & h_{{eff},2,4} & 0 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\ h_{{eff},N_{R},1} & h_{{eff},N_{R},2} & h_{{eff},N_{R},3} & 0 & h_{{eff},N_{R},4} & 0 \\ {- h_{{eff},1,2}^{*}} & h_{{eff},1,1}^{*} & 0 & h_{{eff},1,3}^{*} & 0 & h_{{eff},1,4}^{*} \\ {- h_{{eff},2,2}^{*}} & h_{{eff},2,1}^{*} & 0 & h_{{eff},2,3}^{*} & 0 & h_{{eff},2,4}^{*} \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\ {- h_{{eff},N_{R},2}^{*}} & h_{{eff},N_{R},1}^{*} & 0 & h_{{eff},N_{R},3}^{*} & 0 & h_{{eff},N_{R},4}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(25)} \end{matrix}$

The multi-antenna receiving entity can derive estimates of the transmitted data symbols using various receiver spatial processing techniques. These techniques include an MMSE technique, a CCMI technique (which is also commonly called a zero-forcing technique or a decorrelation technique), a partial-MMSE technique, and a partial-CCMI technique. For the MMSE and CCMI techniques, the receiving entity performs spatial matched filtering on 2N_(R) received symbols obtained in each 2-symbol interval. For the partial-MMSE and partial-CCMI techniques, the receiving entity performs spatial matched filtering on N_(R) received symbols obtained in each symbol period.

A. MMSE Receiver

For the MMSE technique, the receiving entity derives a spatial filter matrix as follows:

$\begin{matrix} \begin{matrix} {{{\underset{\_}{M}}_{mnse} = {\left\lbrack {{{\underset{\_}{\hat{H}}}_{all}^{H} \cdot {\underset{\_}{\hat{H}}}_{all}} + {\underset{\_}{\varphi}}_{nn}} \right\rbrack^{- 1} \cdot {\underset{\_}{\hat{H}}}_{all}^{H}}},} \\ {{= {\left\lbrack {{{\underset{\_}{\hat{H}}}_{all}^{H} \cdot {\underset{\_}{\hat{H}}}_{all}} + {\sigma_{n}^{2}\underset{\_}{I}}} \right\rbrack^{- 1} \cdot {\underset{\_}{\hat{H}}}_{all}^{H}}},} \end{matrix} & {{Eq}\mspace{14mu}(26)} \end{matrix}$ where

-   -   Ĥ _(all) is a 2N_(R)×2N_(D) matrix that is an estimate of H         _(all);     -   φ _(nn) is an autocovariance matrix of the noise vector n _(all)         in equation (10); and     -   M _(mmse) is a 2N_(D)×2N_(R) MMSE spatial filter matrix.

The receiving entity may derive Ĥ _(all) in different manners depending on how pilot symbols are sent by the transmitting entity. For example, the receiving entity may obtain Ĥ _(eff), which is an estimate the effective channel response matrix H _(eff), based on received pilot symbols. The receiving entity may then derive Ĥ _(all) based on Ĥ _(eff), as shown in equation (19), (21), (23) or (25) for the four configurations given in Table 1. The receiving entity may also estimate the overall channel response matrix H _(all) directly based on received pilot symbols. In any case, the second equality in equation (26) assumes that the noise vector n _(all) is AWGN with zero mean and variance of σ_(n) ². The spatial filter matrix M _(mmse) minimizes the mean square error between the symbol estimates from the spatial filter matrix and the data symbols.

The receiving entity performs MMSE spatial processing as follows:

$\begin{matrix} \begin{matrix} {{{\underset{\_}{\hat{s}}}_{mmse} = {\underset{\_}{D} \cdot {\underset{\_}{M}}_{mmse} \cdot \underset{\_}{r}}},} \\ {{= {\underset{\_}{D} \cdot {\underset{\_}{M}}_{mmse} \cdot \left\lbrack {{{\underset{\_}{H}}_{all} \cdot \underset{\_}{s}} + {\underset{\_}{n}}_{all}} \right\rbrack}},} \\ {{= {{\underset{\_}{D} \cdot \underset{\_}{Q} \cdot \underset{\_}{s}} + {\underset{\_}{n}}_{mmse}}},} \end{matrix} & {{Eq}\mspace{14mu}(27)} \end{matrix}$ where

-   -   ŝ _(mmse) is a 2N_(D)×1 vector with 2N_(D) detected symbols         obtained for a 2-symbol interval with the MMSE technique;     -   Q=M _(mmse)·H _(all);     -   D=[diag [Q]]⁻¹ is a 2N_(D)×2N_(D) diagonal matrix; and     -   n _(mmse) is the MMSE filtered noise.         The symbol estimates from the spatial filter matrix M _(mmse)         are unnormalized estimates of the data symbols. The         multiplication with the scaling matrix D provides normalized         estimates of the data symbols.

B. CCMI Receiver

For the CCMI technique, the receiving entity derives a spatial filter matrix as follows: M _(ccmi) =[Ĥ _(all) ^(H) ·Ĥ _(all)]⁻¹ ·Ĥ _(all) ^(H) ={circumflex over (R)} _(all) ⁻¹ ·Ĥ _(all) ^(H),  Eq (28) where M _(ccmi) is a 2N_(D)×2N_(R) CCMI spatial filter matrix.

The receiving entity performs CCMI spatial processing as follows:

$\begin{matrix} \begin{matrix} {{{\underset{\_}{\hat{s}}}_{ccmi} = {{\underset{\_}{M}}_{ccmi} \cdot \underset{\_}{r}}},} \\ {{= {{\underset{\_}{\hat{R}}}_{all}^{- 1} \cdot {\underset{\_}{\hat{H}}}_{all}^{H} \cdot \left\lbrack {{{\underset{\_}{H}}_{all} \cdot \underset{\_}{s}} + {\underset{\_}{n}}_{all}} \right\rbrack}},} \\ {{= {\underset{\_}{s} + {\underset{\_}{n}}_{ccmi}}},} \end{matrix} & {{Eq}\mspace{14mu}(29)} \end{matrix}$ where

-   -   ŝ _(ccmi) is a 2N_(D)×1 vector with 2N_(D) detected symbols         obtained for a 2-symbol interval with the CCMI technique; and     -   n _(ccmi) is the CCMI filtered noise.

C. Partial-MMSE Receiver

For the partial-MMSE and partial-CCMI techniques, the receiving entity performs spatial matched filtering on the N_(R) received symbols for each symbol period based on a spatial filter matrix for that symbol period. For each STTD encoded data symbol stream, the receiving entity obtains two estimates in two symbol periods for each data symbol sent in the stream and combines these two estimates to generate a single estimate for the data symbol. The partial-MMSE and partial-CCMI techniques may be used if the receiving entity is equipped with at least N_(C) receive antennas, or N_(R)≧N_(C). There should be at least as many receive antennas as the number of coded symbols transmitted at each symbol period, which is shown in Table 1.

For the partial-MMSE technique, the receiving entity derives a spatial filter matrix as follows:

$\begin{matrix} \begin{matrix} {{{\underset{\_}{M}}_{p - {mmse}} = {\left\lbrack {{{\underset{\_}{\hat{H}}}_{eff}^{H} \cdot {\underset{\_}{\hat{H}}}_{eff}} + {\underset{\_}{\varphi}}_{nn}} \right\rbrack^{- 1} \cdot {\underset{\_}{\hat{H}}}_{eff}^{H}}},} \\ {{= {\left\lbrack {{{\underset{\_}{\hat{H}}}_{eff}^{H} \cdot {\underset{\_}{\hat{H}}}_{eff}} + {\sigma_{n}^{2}\underset{\_}{I}}} \right\rbrack^{- 1} \cdot {\underset{\_}{\hat{H}}}_{eff}^{H}}},} \end{matrix} & {{Eq}\mspace{14mu}(30)} \end{matrix}$ where

-   -   Ĥ _(eff) is an N_(R)×N_(C) matrix that is an estimate of H         _(eff); and     -   M _(p-mmse) is an N_(C)×N_(R) MMSE spatial filter matrix for one         symbol period.         The effective channel response matrix H _(eff) is dependent on         the configuration used for data transmission and has the form         shown in equation (8).

The receiving entity performs MMSE spatial processing for each symbol period as follows:

$\begin{matrix} {\begin{matrix} {{{\underset{\_}{\hat{s}}}_{{mmse},t} = {{\underset{\_}{D}}_{p - {mmse}} \cdot {\underset{\_}{M}}_{p - {mmse}} \cdot {\underset{\_}{r}}_{t}}},} \\ {{= {{\underset{\_}{D}}_{p - {mmse}} \cdot {\underset{\_}{M}}_{p - {mmse}} \cdot \left\lbrack {{{\underset{\_}{H}}_{eff} \cdot {\underset{\_}{s}}_{t}} + {\underset{\_}{n}}_{t}} \right\rbrack}},} \\ {{= {{{\underset{\_}{D}}_{p - {mmse}} \cdot {\underset{\_}{Q}}_{p - {mmse}} \cdot {\underset{\_}{s}}_{t}} + {\underset{\_}{n}}_{{mmse},t}}},} \end{matrix}{{{{for}\mspace{14mu} t} = 1},2,}} & {{Eq}\mspace{14mu}(31)} \end{matrix}$ where

-   -   ŝ _(mmse,t) is an N_(C)×1 vector with N_(C) detected symbols         obtained in symbol period t with the partial-MMSE technique;     -   Q _(p-mmse)=M _(p-mmse)·H _(eff);     -   D _(p-mmse)=[diag [Q _(p-mmse)]]⁻¹ is an N_(C)×N_(C) diagonal         matrix; and     -   n _(mmse,t) is the MMSE filtered noise for symbol period t.

The partial-MMSE processing provides two vectors ŝ _(mmse,1) and ŝ _(mmse,2) for the first and second symbol periods, respectively, which are estimates of vectors s ₁ and s ₂, respectively. The detected symbols in vector ŝ _(mmse,2) are conjugated and/or negated, as needed, to obtain estimates of the data symbols included in vector s ₂. As an example, for the 2×3 configuration, ŝ _(mmse,1)=[ŝ_(a) ŝ_(b) ŝ_(c)]^(T) and ŝ _(mmse,2)=[ŝ*_(b) −ŝ*_(a) ŝ*_(d)]^(T). For vector ŝ _(mmse,2), ŝ*_(b) is conjugated to obtain a second estimate of s_(b), −ŝ*_(a) is negated and conjugated to obtain a second estimate of s_(a), and ŝ*_(d) is conjugated to obtain an estimate of s_(d).

For each STTD encoded data symbol stream, the partial-MMSE processing provides two detected symbols in two symbol periods for each data symbol sent in that stream. In particular, the partial-MMSE processing provides two estimates of s_(a) and two estimates of s_(b) for all four configurations in Table 1 and further provides two estimates of s_(c) and two estimates of s_(d) for the 2×4 configuration. The two estimates of each data symbol may be combined to generate a single estimate of that data symbol.

The two estimates of a data symbol s_(m) may be combined using maximal ratio combining (MRC), as follows:

$\begin{matrix} {{{\hat{s}}_{m} = \frac{{\gamma_{m,1} \cdot {\hat{s}}_{m,1}} + {\gamma_{m,2} \cdot {\hat{s}}_{m,2}}}{\gamma_{m,1} + \gamma_{m,2}}},} & {{Eq}\mspace{14mu}(32)} \end{matrix}$ where

-   -   ŝ_(m,t) is an estimate of data symbol s_(m) obtained in symbol         period t;     -   γ_(m,t) is the SNR of ŝ_(m,t); and     -   ŝ_(m) is a final estimate of data symbol s_(m).

The estimate ŝ_(m,1) is obtained from coded symbol stream m₁ in symbol period t=1, and the estimate ŝ_(m,2) is obtained from coded symbol stream m₂ in symbol period t=2. The SNR of ŝ_(m,t) for the partial-MMSE technique may be expressed as:

$\begin{matrix} {{\gamma_{m,t} = \frac{q_{m_{t},m_{t}}}{1 - q_{m_{t},m_{t}}}},{{{for}\mspace{14mu} t} = 1},2,} & {{Eq}\mspace{14mu}(33)} \end{matrix}$ where

-   -   m_(t) is the coded symbol stream from which ŝ_(m,t) was         obtained; and     -   q_(m) _(t) _(,m) _(t) is the m_(t)-th diagonal element of Q         _(p-mmse) defined above for equation (31).

The two estimates of data symbol Sm may also be linearly combined, as follows:

$\begin{matrix} {{\hat{s}}_{m} = {\frac{{\hat{s}}_{m,1} + {\hat{s}}_{m,2}}{2}.}} & {{Eq}\mspace{14mu}(34)} \end{matrix}$ Equation (34) provides the same performance as the MRC technique if the SNRs of the two estimates ŝ_(m,1) and ŝ_(m,2) are equal but provides sub-optimal performance if the SNRs are not equal.

D. Partial-CCMI Receiver

For the partial-CCMI technique, the receiving entity derives a spatial filter matrix for one symbol period as follows: M _(p-ccmi) =[Ĥ _(eff) ^(H) ·Ĥ _(eff)]⁻¹ ·Ĥ _(eff) ^(H) ={circumflex over (R)} _(eff) ⁻¹ ·Ĥ _(eff) ^(H),  Eq (35) where M _(p-ccmi) is an N_(C)×N_(R) CCMI spatial filter matrix for one symbol period.

The receiving entity performs CCMI spatial processing for each symbol period as follows:

$\begin{matrix} \begin{matrix} \begin{matrix} {{{\hat{\underset{\_}{s}}}_{{ccmi},t} = {{\underset{\_}{M}}_{p - {ccmi}} \cdot {\underset{\_}{r}}_{t}}},} \\ {{= {{\hat{\underset{\_}{R}}}_{eff}^{- 1} \cdot {\hat{\underset{\_}{H}}}_{eff}^{H} \cdot \left\lbrack {{{\underset{\_}{H}}_{eff} \cdot {\underset{\_}{s}}_{t}} + {\underset{\_}{n}}_{t}} \right\rbrack}},\mspace{14mu}{{{for}\mspace{14mu} t} = 1},2,} \\ {{= {{\underset{\_}{s}}_{t} + {\underset{\_}{n}}_{{ccmi},t}}},} \end{matrix} & {{Eq}\mspace{14mu}(36)} \end{matrix} & \; \end{matrix}$ where

-   -   ŝ_(ccmi,t) is an N_(C)×1 vector with N_(C) detected symbols         obtained in symbol period t with the partial-CCMI technique; and     -   n _(ccmi,t) is the CCMI filtered noise for symbol period t.

The receiving entity may combine two estimates of a given data symbol using MRC, as shown in equation (32). In this case, the SNR of detected symbol ŝ_(m,t) for the CCMI technique may be expressed as:

$\begin{matrix} {{\gamma_{m,t} = {{\frac{1}{{r_{m_{t},m_{t}} \cdot \sigma_{n}^{2}},}\mspace{14mu}{for}\mspace{14mu} t} = 1}},2,} & {{Eq}\mspace{14mu}(37)} \end{matrix}$ where r_(m) _(t) _(,m) _(t) is the m_(t)-th diagonal element of {circumflex over (R)} _(eff) ⁻¹.

The partial-MMSE and partial-CCMI techniques may reduce delay (or latency) for data symbol streams sent without STTD. The partial-MMSE and partial-CCMI techniques may also reduce complexity of the spatial matched filtering since the spatial filter matrix for each symbol period has dimension of N_(C)×N_(R) whereas the spatial filter matrix for each 2-symbol period interval has dimension of 2N_(D)×2N_(R).

4. Alternate STTD Encoding Scheme

For clarity, the description above is for the case in which a pair of data symbols s_(a) and s_(b) is STTD encoded into two vectors s ₁=[s_(a) s_(b)]^(T) and s ₂=[s*_(b) −s*_(a)]^(T). As noted above, the pair of data symbols s_(a) and s_(b) may also be STTD encoded into two vectors is s ₁=[s_(a) −s*_(b)]^(T) and s ₂=[s_(b) s*_(a)]^(T). The various vectors and matrices described above may be different for this alternate STTD encoding scheme.

As an example, for the 2×4 configuration, the transmitting entity may generate vectors is s ₁=[s_(a) −s*_(b) s_(c) −s*_(d)]^(T) and s ₂=[s_(b) s*_(a) s_(d) s*_(c)]^(T) for two pairs of data symbols (s_(a) and s_(b)) and (s_(c) and s_(d)) to be sent in two symbol periods for two data symbol streams. The data vector s may be given as s=[s_(a) s*_(b) s_(c) s*_(d)]^(T), the received vector r may be given as r=[r_(1,1) . . . r_(N) _(R) _(,1) r*_(1,2) . . . r*_(N) _(R) _(,2)]^(T), and the overall channel response matrix H _(all) may be expressed as:

$\begin{matrix} {{\underset{\_}{H}}_{all}^{2 \times 4} = {\begin{bmatrix} h_{{eff},1,1} & {- h_{{eff},1,2}} & h_{{eff},1,3} & {- h_{{eff},1,4}} \\ h_{{eff},2,1} & {- h_{{eff},2,2}} & h_{{eff},2,3} & {- h_{{eff},2,4}} \\ \vdots & \vdots & \vdots & \vdots \\ h_{{eff},N_{R},1} & {- h_{{eff},N_{R},2}} & h_{{eff},N_{R},3} & {- h_{{eff},N_{R},4}} \\ h_{{eff},1,2}^{*} & h_{{eff},1,1}^{*} & h_{{eff},1,4}^{*} & h_{{eff},1,3}^{*} \\ h_{{eff},2,2}^{*} & h_{{eff},2,1}^{*} & h_{{eff},2,4}^{*} & h_{{eff},2,3}^{*} \\ \vdots & \vdots & \vdots & \vdots \\ h_{{eff},N_{R},2}^{*} & h_{{eff},N_{R},1}^{*} & h_{{eff},N_{R},4}^{*} & h_{{eff},N_{R},3}^{*} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(38)} \end{matrix}$ The vectors s ₁, s ₂ and s and the matrix H _(all) for the other configurations may be derived in similar manner as described above for the 2×4 configuration.

For the alternate STTD encoding scheme, the receiving entity uses the matrix H _(all) defined for the alternate STTD encoding scheme, instead of the matrix H _(all) defined for first STTD encoding scheme, to derive an MMSE spatial filter matrix or a CCMI spatial filter matrix. For the 2×4 configuration, the matrix H _(all) shown in equation (38) is used instead of the matrix H _(all) shown in equation (23). The receiving entity then performs spatial matched filtering on the received vector r with the spatial filter matrix to obtain ŝ, which is an estimate of s for the alternate STTD encoding scheme. The receiving entity then conjugates the symbols in ŝ, as needed, to obtain the recovered data symbols.

In general, the overall channel response matrix H _(all) is dependent on the manner in which the STTD encoding is performed by the transmitting entity and any other spatial processing performed by the transmitting entity. The receiving entity performs MMSE or CCMI processing in the same manner, albeit with the overall channel response matrix derived in the proper manner.

The effective channel response matrix H _(eff) is the same for both STTD encoding schemes and is shown in equation (8). The receiving entity uses H _(eff) to derive a partial-MMSE spatial filter matrix or a partial-CCMI spatial filter matrix. The receiving entity then performs spatial matched filtering on the received vector r _(t) for each symbol period with the spatial filter matrix to obtain ŝ _(t), which is an estimate of s _(t) for the alternate STTD encoding scheme. The receiving entity then conjugates the detected symbols in ŝ _(t) as needed and further combines estimates as appropriate to obtain the recovered data symbols.

5. Receiver Processing

FIG. 3 shows a block diagram of an RX spatial processor 170 a and an RX STTD processor 172 a, which can implement the MMSE or CCMI technique. RX spatial processor 170 a and RX STTD processor 172 a are one embodiment of RX spatial processor 170 and RX STTD processor 172, respectively, for multi-antenna receiving entity 150 y in FIG. 2. Channel estimator 166 derives the effective channel response estimate Ĥ _(eff) based on received pilot symbols, as described below. Matched filter generator 168 forms the overall channel response estimate Ĥ _(all) based on Ĥ _(eff) and derives an MMSE or CCMI spatial filter matrix M for a 2-symbol interval based on Ĥ _(all), as shown in equation (26) or (28).

Within RX spatial processor 170 a, a pre-processor 310 obtains the received vector r _(t) for each symbol period, conjugates the received symbols for the second symbol period of each 2-symbol interval, and forms the received vector r for each 2-symbol interval, as shown in equation (17). A spatial processor 320 performs spatial matched filtering on the received vector r with the spatial filter matrix M and provides vector ŝ, as shown in equation (27) or (29). Within RX STUD processor 172 a, an STTD post-processor 330 conjugates the symbols in vector ŝ, as needed, and provides 2N_(D) recovered data symbols for each 2-symbol interval. A demultiplexer (Demux) 340 demultiplexes the recovered data symbols from STUD post-processor 330 onto N_(D) recovered data symbol streams and provides these streams to RX data processor 174.

FIG. 4 shows a block diagram of an RX spatial processor 170 b and an RX STTD processor 172 b, which can implement the partial-MMSE or partial-CCMI technique. RX spatial processor 170 b and RX STTD processor 172 b are another embodiment of RX spatial processor 170 and RX STTD processor 172, respectively. Channel estimator 166 derives the effective channel response estimate Ĥ _(eff). Matched filter generator 168 generates a partial-MMSE or partial-CCMI spatial filter matrix M _(p) for one symbol period based on Ĥ _(eff), as shown in equation (30) or (35).

Within RX spatial processor 170 b, a spatial processor 420 performs spatial matched filtering on the received vector r _(t) for each symbol period with the spatial filter matrix M _(p) for that symbol period and provides vector ŝ _(t), as shown in equation (31) or (36). Within RX STTD processor 172 b, an STTD post-processor 430 conjugates the detected symbols in vector ŝ _(t), as needed, and provides N_(C) data symbol estimates for each symbol period. A combiner 432 combines two estimates for each data symbol sent with STTD, e.g., as shown in equation (32) or (34), and provides a single estimate for that data symbol. A demultiplexer 440 demultiplexes the recovered data symbols from combiner 432 onto N_(D) recovered data symbol streams and provides these streams to RX data processor 174.

FIG. 5 shows a process 500 for receiving a data transmission with the MMSE or CCMI technique. Received symbols are obtained for the data transmission, which includes at least one STTD encoded data symbol stream (block 510). An effective channel response matrix is obtained, e.g., based on received pilot symbols (block 512). An overall channel response matrix is formed based on the effective channel response matrix and in accordance with the STUD encoding scheme used for the data transmission (block 514). A spatial filter matrix is derived based on the overall channel response matrix and in accordance with, e.g., the MMSE or CCMI technique (block 516). A vector of received symbols is formed for each 2-symbol interval (block 518). Spatial processing is performed on the vector of received symbols for each 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval (block 520). Post-processing (e.g., conjugation) is performed on the detected symbols, if needed, to obtain recovered data symbols (block 522).

FIG. 6 shows a process 600 for receiving a data transmission with the partial-MMSE or partial-CCMI technique. Received symbols are obtained for the data transmission, which includes at least one STTD encoded data symbol stream (block 610). An effective channel response matrix is obtained, e.g., based on received pilot symbols (block 612). A spatial filter matrix is derived based on the effective channel response matrix and in accordance with, e.g., the MMSE or CCMI technique (block 614). Spatial processing is performed on the received symbols for each symbol period with the spatial filter matrix to obtain detected symbols for the symbol period (block 616). Post-processing (e.g., conjugation) is performed on the detected symbols, if needed, to obtain estimates of data symbols (block 618). Multiple estimates of each data symbol sent with STTD are combined to obtain a single estimate for the data symbol (block 620).

6. SFTD and Spatial Spreading

The transmitting entity may also use a combination of SFTD, spatial spreading, and possibly continuous beamforming. For each configuration shown in Table 1, the transmitting entity may generate two vectors s ₁ and s ₂ for 2N_(D) data symbols to be sent on two subbands in one symbol period for N_(D) data symbol streams. The transmitting entity may spatially spread and send vector s ₁ on one subband in one symbol period and spatially spread and send vector s ₂ on another subband in the same symbol period. The two subbands are typically adjacent subbands. The receiving entity may derive the overall channel response matrix H _(all) as described above, except that the first N_(R) rows of H _(all) are for the first subband (instead of the first symbol period) and the last N_(R) rows of H _(all) are for the second subband (instead of the second symbol period). The receiving entity may perform MMSE, CCMI, partial-MMSE, or partial-CCMI processing in the manner described above.

7. Steering Matrices for Spatial Spreading

Various types of steering matrices may be used for spatial spreading. For example, the steering matrix V may be a Walsh matrix, a Fourier matrix, or some other matrix. A 2×2 Walsh matrix W _(2×2) be expressed as

${\underset{\_}{W}}_{2 \times 2} = {\begin{bmatrix} 1 & {\mspace{14mu} 1} \\ 1 & {- 1} \end{bmatrix}.}$ A larger size Walsh matrix W _(2N×2N) may be formed from a smaller size Walsh matrix W _(N×N), as follows:

$\begin{matrix} {{\underset{\_}{W}}_{2N \times 2N} = {\begin{bmatrix} {\underset{\_}{W}}_{N \times N} & {\underset{\_}{W}}_{N \times N} \\ {\underset{\_}{W}}_{N \times N} & {\;{- {\underset{\_}{W}}_{N \times N}}} \end{bmatrix}.}} & {{Eq}\mspace{14mu}(39)} \end{matrix}$ An N×N Fourier matrix D_(N×N) has element d_(n,m) in the n-th row of the m-th column, which may be expressed as:

$\begin{matrix} {{d_{n,m} = {\mathbb{e}}^{{- {j\pi}}\frac{{({n - 1})}{({m - 1})}}{N}}},\mspace{14mu}{{{for}\mspace{14mu} n} = {{1\mspace{14mu}\ldots\mspace{14mu} N\mspace{14mu}{and}\mspace{14mu} m} = {1\mspace{14mu}\ldots\mspace{14mu}{N.}}}}} & {{Eq}\mspace{14mu}(40)} \end{matrix}$ Fourier matrices of any square dimension (e.g., 2, 3, 4, 5, and so on) may be formed.

A Walsh matrix W _(N×N), a Fourier matrix D _(N×N), or any other matrix may be used as a base matrix B _(N×N) to form other steering matrices. For an N×N base matrix, each of rows 2 through N of the base matrix may be independently multiplied with one of M different possible scalars. M^(N−1) different steering matrices may be obtained from M^(N−1) different permutations of the M scalars for the N−1 rows. For example, each of rows 2 through N may be independently multiplied with a scalar of +1, −1, +j, or −j, where j=√{square root over (−1)}. For N=4, 64 different steering matrices may be generated from a base matrix B _(4×4) with the four different scalars. Additional steering matrices may be generated with other scalars, e.g., e^(±j3π/4), e^(±jπ/4), e^(±jπ/8), and so on. In general, each row of the base matrix may be multiplied with any scalar having the form e^(jθ), where θ may be any phase value. N×N steering matrices may be generated from the N×N base matrix as V(i)=g_(N)·B _(N×N) ^(i), where g_(N)=1/√{square root over (N)} and B_(N×N) ^(i) is the i-th steering matrix generated with the base matrix B _(N×N). The scaling by g_(N)=1/√{square root over (N)} ensures that each column of V(i) has unit power.

The steering matrices may also be generated in a pseudo-random manner. The steering matrices are typically unitary matrices having columns that are orthogonal to one another. The steering matrices may also be orthonormal matrices having orthogonal columns and unit power for each column, so that V ^(H)·V=I, and I is the identity matrix. A steering matrix of a dimension that is not square may be obtained by deleting one or more columns of a square steering matrix.

Different steering matrices may be used for different time intervals. For example, different steering matrices may be used for different symbol periods for SFTD and for different 2-symbol intervals for STTD and OTD. For an OFDM system, different steering matrices may be used for different subbands for STTD and OTD and for different pairs of subbands for SFTD. Different steering matrices may also be used for different subbands and different symbol periods. The randomization provided by spatial spreading (across time and/or frequency) with the use of different steering matrices can mitigate deleterious effects of a wireless channel.

8. Frame Structure and MIMO Pilot

FIG. 7 shows an exemplary protocol data unit (PDU) 700 that supports MISO and MIMO transmissions. PDU 700 includes a section 710 for a MIMO pilot and a section 720 for data. PDU 700 may also include other sections, e.g., for a preamble, signaling, and so on. A MIMO pilot is a pilot that is sent from all transmit antennas used for data transmission and allows a receiving entity to estimate the MISO or MIMO channel used for data transmission. The MIMO pilot may be transmitted in various manners.

In an embodiment, the transmitting entity transmits a “clear” MIMO pilot (i.e., without spatial spreading) from all N_(T) transmit antennas, as follows: x _(pilot) ^(ns)(k,t)= W (t)· p (k), for t=1 . . . L,  Eq (41) where

-   -   p(k) is an N_(T)×1 vector with N_(T) pilot symbols sent on         subband k;     -   W(t) is an N_(T)×N_(T) diagonal Walsh matrix for symbol period         t; and     -   x _(pilot) ^(ns) (k,t) is an N_(T)×1 vector with N_(T) spatially         processed symbols for the clear MIMO pilot for subband k in         symbol period t.         The N_(T) transmit antennas may be assigned N_(T) different         Walsh sequences of length L, where L≧N_(T). Each Walsh sequence         corresponds to one diagonal element of W(t). Alternatively, the         transmitting entity may generate the clear MIMO pilot as: x         _(pilot) ^(ns)(k,t)=w(t)·p(k), where p(k) is a scalar for a         pilot symbol, and w(t) is an N_(T)×1 vector with the Walsh         sequences assigned to the N_(T) transmit antennas. For         simplicity, the continuous beamforming is not shown in         equation (41) but is typically performed in the same manner, if         at all, for both pilot and data transmission. The MIMO channel         is assumed to be constant over the length of the Walsh         sequences.

The received pilot symbols obtained by the receiving entity for the clear MIMO pilot may be expressed as: r _(pilot) ^(ns)(k,t)= H (k)· W (t)· p (k)+ n (k), for t=1 . . . L,  Eq (42) where r _(pilot) ^(ns)(k,t) is an N_(R)×1 vector with N_(R) received pilot symbols for the clear MIMO pilot for subband k in symbol period t.

The receiving entity may derive an estimate of the MIMO channel matrix H(k) based on the clear MIMO pilot. Each column of H(k) is associated with a respective Walsh sequence. The receiving entity may obtain an estimate of h_(j,i)(k), which is the channel gain between the i-th transmit antenna and the j-th receive antenna, as follows. The receiving entity first multiplies the j-th element of r _(pilot) ^(ns)(k,1) through r _(pilot) ^(ns)(k,L) by the L chips of Walsh sequence W_(i) assigned to the i-th transmit antenna and obtains a sequence of L recovered symbols. The receiving entity then removes the modulation used for pilot symbol p_(i)(k), which is the i-th element of p(k), from the L recovered symbols. The receiving entity then accumulates the L resultant symbols to obtain the estimate of h_(j,i)(k), which is the element in the j-th row and the i-th column of H(k). The process is repeated for each of the elements of H(k). The receiver entity may then derive an estimate of H _(eff)(k) based on Ĥ(k) and the known steering matrices used by the transmitting entity. The receiving entity may use Ĥ(k) for receiver spatial processing, as described above.

The transmitting entity may send a spatially spread MIMO pilot, as follows: x _(pilot) ^(ss)(k,t)= V (k)· W (t)· p (k), for t=1 . . . L,  Eq (43) where

-   -   p(k) is an N_(C)×1 vector with N_(C) pilot symbols to be sent on         subband k;     -   W(t) is an N_(C)×N_(C) diagonal Walsh matrix for symbol period         t;     -   V(k) is an N×N_(C) steering matrix for spatial spreading for         subband k; and     -   x _(pilot) ^(ss)(k,t) is an N_(T)×1 vector with N_(T) spatially         processed symbols for the spatially spread MIMO pilot for         subband k in symbol period t.         The Walsh sequences have length of L, where L≧N_(C) for the         spatially spread MIMO pilot. Alternatively, the transmitting         entity may generate the spatially spread MIMO pilot as: x         _(pilot) ^(ss)(k,t)=V(k)·w(t)·p(k), where p(k) and w(t) are         described above.

The received pilot symbols obtained by the receiving entity for the spatially spread MIMO pilot may be expressed as: r _(pilot) ^(ss)(k,t)= H (k)· V (k)· W (t)· p (k)+ n (k),  Eq (44) where r _(pilot) ^(ss)(k,t) is an N_(R)×1 vector with N_(R) received pilot symbols for the spatially spread MIMO pilot for subband k in symbol period t.

The receiving entity may derive an estimate of the effective MIMO channel H _(eff)(k) based on the received pilot symbols in r _(pilot) ^(ss)(k,t), e.g., as described above for the clear MIMO pilot. In this case, the receiving entity removes p(k) and W(t) and obtains Ĥ _(eff)(k), which is an estimate of H(k)·V(k). Alternatively, the transmitting entity may generate a spatially spread MIMO pilot as: x _(pilot) ^(ss)(k,t)=W(t)·p(k) or x _(pilot) ^(ss)(k,t)=w(t)·p(k), where W(t) or w(t) performs the spatial spreading. In this case, the receiving entity may form Ĥ _(eff)(k), which is an estimate of H(k)·W(k), directly based on the received pilot symbols without any extra processing. In any case, the receiving entity may use Ĥ _(eff)(k) for receiver spatial processing.

In another embodiment, the transmitting entity transmits a clear or spatially spread MIMO pilot using subband multiplexing. With subband multiplexing, only one transmit antenna is used for each subband in each symbol period. The Walsh matrix W(t) is not needed.

The data transmission and reception techniques described herein may be implemented by various means. For example, these techniques may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units at a transmitting entity may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, or a combination thereof. The processing units at a receiving entity may also be implemented within one or more ASICs, DSPs, and so on.

For a software implementation, the techniques described herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit (e.g., memory unit 142 in FIG. 1, or memory unit 182 x or 182 y in FIG. 2) and executed by a processor (e.g., controller 140 in FIG. 1, or controller 180 x or 180 y in FIG. 2). The memory unit may be implemented within the processor or external to the processor.

Headings are included herein for reference and to aid in locating certain sections. These headings are not intended to limit the scope of the concepts described therein under, and these concepts may have applicability in other sections throughout the entire specification.

The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein. 

1. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD); obtaining an effective channel response matrix for the data transmission; deriving a spatial filter matrix with the effective channel response matrix; and performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 2. The method of claim 1, wherein the obtaining the effective channel response matrix comprises receiving pilot symbols sent with the data transmission, and deriving the effective channel response matrix based on the received pilot symbols.
 3. The method of claim 1, wherein the obtaining the effective channel response matrix comprises receiving pilot symbols sent with spatial spreading, and deriving the effective channel response matrix based on the received pilot symbols.
 4. The method of claim 1, wherein the obtaining the effective channel response matrix comprises receiving pilot symbols sent with spatial spreading and continuous beam forming, and deriving the effective channel response matrix based on the received pilot symbols.
 5. The method of claim 1, further comprising: forming an overall channel response matrix based on the effective channel response matrix and in accordance with an STTD encoding scheme used for the data transmission.
 6. The method of claim 5, wherein the deriving the spatial filter matrix comprises forming the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSE) technique.
 7. The method of claim 5, wherein the deriving the spatial filter matrix comprises forming the spatial filter matrix based on the overall channel response matrix and in accordance with a channel correlation matrix inversion (CCMI) technique.
 8. The method of claim 1, further comprising: forming a vector of received symbols for the 2-symbol interval, and wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval.
 9. The method of claim 1, wherein the deriving the spatial filter matrix comprises forming the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique.
 10. The method of claim 1, wherein the deriving the spatial filter matrix comprises forming the spatial filter matrix based on the effective channel response matrix and in accordance with a channel correlation matrix inversion (CCMI) technique.
 11. The method of claim 1, wherein the performing spatial processing on the received symbols comprises performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.
 12. The method of claim 1, further comprising: combining multiple detected symbols obtained for each data symbol sent with STTD.
 13. The method of claim 1, further comprising: performing maximal ratio combining of multiple detected symbols obtained for each data symbol sent with STTD.
 14. The method of claim 1, further comprising: performing post-processing on the detected symbols in accordance with an STTD encoding scheme used for the data transmission to obtain estimates of data symbols sent for the data transmission.
 15. The method of claim 14, wherein the performing post-processing on the detected symbols comprises conjugating the detected symbols, as needed, in accordance with the STTD scheme used for the data transmission.
 16. The method of claim 14, further comprising: demultiplexing the data symbol estimates onto one or more data symbol streams sent for the data transmission.
 17. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission comprising multiple data symbol streams with at least one data symbol stream being sent with space-time transmit diversity(STTD); obtaining an effective channel response matrix for the data transmission; Deriving a spatial filter matrix with the effective channel response matrix; and performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols for the plurality of data symbol streams.
 18. The method of claim 17, wherein the obtaining the received symbols comprises obtaining the received symbols for the data transmission comprising the multiple data symbol streams with at least one data symbol stream being sent with STTD and at least one data symbol stream being sent without STTD.
 19. The method of claim 17, wherein the obtaining the received symbols comprises obtaining the received symbols for the data transmission comprising the multiple data symbol streams with at least two data symbol streams being sent with STTD.
 20. The method of claim 17, wherein the obtaining the effective channel response matrix comprises estimating channel gains for each of the multiple data symbol streams at a plurality of receive antennas, and forming the effective channel response matrix with the estimated channel gains for the multiple data symbol streams and the plurality of receive antennas.
 21. The method of claim 17, wherein the performing spatial processing on the received symbols comprises performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the plurality of data symbol streams in the symbol period.
 22. An apparatus in a wireless communication system, comprising: at least one demodulator configured to obtain received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD); a channel estimator configured to obtain an effective channel response matrix for the data transmission; a matched filter generator configured to derive a spatial filter matrix with the effective channel response matrix; and a spatial processor configured to perform spatial processing on the received symbols; based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 23. The apparatus of claim 22, wherein the effective channel response matrix includes effects of spatial processing performed for the data transmission.
 24. The apparatus of claim 22, wherein the matched filter generator is configured to form an overall channel response matrix based on the effective channel response matrix and in accordance with an STTD encoding scheme used for the data transmission.
 25. The apparatus of claim 24, wherein the matched filter generator is configured to form the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.
 26. The apparatus of claim 22, wherein the spatial processor is configured to form a vector of received symbols for the 2-symbol interval and performs spatial processing on the vector of received symbols to obtain a vector of detected symbols for the 2-symbol interval.
 27. The apparatus of claim 22, wherein the matched filter generator is configured to form the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.
 28. The apparatus of claim 22, wherein the spatial processor is configured to perform spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.
 29. The apparatus of claim 22, further comprising: a combiner configured to combine multiple detected symbols obtained for each data symbol sent with STTD.
 30. The apparatus of claim 22, further comprising: a post-processor to configured to perform post-processing on the detected symbols in accordance with an STTD encoding scheme used for the data transmission to obtain estimates of data symbols sent for the data transmission.
 31. An apparatus in a wireless communication system, comprising: means for obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD); means for obtaining an effective channel response matrix for the data transmission; means for deriving a spatial filter matrix with the effective channel response matrix; and means for performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 32. The apparatus of claim 31, further comprising: means for forming an overall channel response matrix based on the effective channel response matrix and in accordance with an STTD encoding scheme used for the data transmission.
 33. The apparatus of claim 32, wherein the means for deriving the spatial filter matrix comprises means for forming the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.
 34. The apparatus of claim 31, further comprising: means for forming a vector of received symbols for the 2-symbol interval, and wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on the vector of received symbols for the 2-symbol interval to obtain a vector of detected symbols for the 2-symbol interval.
 35. The apparatus of claim 31, wherein the means for deriving the spatial filter matrix comprises means for forming the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.
 36. The apparatus of claim 31, wherein means for performing spatial processing comprises means for performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.
 37. The apparatus of claim 31, further comprising: means for combining multiple detected symbols obtained for each data symbol sent with STTD.
 38. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD); obtaining an effective channel response matrix for the data transmission; forming an overall channel response matrix in accordance with an STTD encoding scheme used for the data transmission; deriving a spatial filter matrix based on the overall channel response matrix; forming a vector of received symbols for a 2-symbol interval; and performing spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval.
 39. The method of claim 38, wherein the deriving the spatial filter matrix comprises; forming the spatial filter matrix based on the overall channel response matrix and in accordance with a minimum mean square error (MMSL) technique or a channel correlation matrix inversion (CCMI) technique.
 40. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission comprising at least one data symbol stream sent with space-time transmit diversity (STTD); obtaining an effective channel response matrix for the data transmission; deriving a spatial filter matrix based on the effective channel response matrix; performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period; and combining multiple detected symbols obtained for each data symbol sent with STTD.
 41. The method of claim 40, wherein the deriving the spatial filter matrix comprises forming the spatial filter matrix based on the effective channel response matrix and in accordance with a minimum mean square error (MMSL) technique or a channel correlation matrix inversion (CCMI) technique.
 42. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission; obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading; deriving a spatial filter matrix with the effective channel response matrix; and performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 43. The method of claim 42, further comprising: forming a vector of received symbols for the 2-symbol interval, and wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval.
 44. A method of receiving data in a wireless communication system, comprising: obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission; obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading; deriving a spatial filter matrix with the effective channel response matrix; performing spatial processing on the received symbols with the spatial filter matrix to obtain detected symbols; and forming a vector of received symbols for each pair of frequency subbands; wherein the performing spatial processing on the received symbols comprises performing spatial processing on the vector of received symbols for the pair of frequency subbands with the spatial filter matrix to obtain a vector of detected symbols for the pair of frequency subbands.
 45. The method of claim 42, wherein the performing spatial processing on the received symbols comprises performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.
 46. The method of claim 42, wherein the deriving the spatial filter matrix comprises; forming the spatial filter matrix with the effective channel response matrix and in accordance with a minimum mean square error (MMSE) technique or a channel correlation matrix inversion (CCMI) technique.
 47. An apparatus in a wireless communication system, comprising: at least one demodulator configured to obtain received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission; a channel estimator configured to obtain an effective channel response matrix for the data transmission and including effects of the spatial spreading; a matched filter generator configured to derive a spatial filter matrix with the effective channel response matrix; and a spatial processor configured to perform spatial processing on the received symbols; based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 48. The apparatus of claim 47, wherein the spatial processor is configured to form a vector of received symbols for the 2-symbol interval and performs spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval.
 49. The apparatus of claim 47, wherein the spatial processor is configured to perform spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period.
 50. An apparatus in a wireless communication system, comprising: means for obtaining received symbols for a data transmission sent with space-time transmit diversity (STTD), space-frequency transmit diversity (SFTD), or orthogonal transmit diversity (OTD) for at least one data symbol stream and with spatial spreading for all data symbol streams in the data transmission; means for obtaining an effective channel response matrix for the data transmission and including effects of the spatial spreading; means for deriving a spatial filter matrix with the effective channel response matrix; and means for performing spatial processing on the received symbols, based on a 2-symbol interval corresponding to the received symbols, with the spatial filter matrix to obtain detected symbols.
 51. The apparatus of claim 50, further comprising: means for forming a vector of received symbols for 2-symbol interval, and wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on the vector of received symbols for the 2-symbol interval with the spatial filter matrix to obtain a vector of detected symbols for the 2-symbol interval
 52. The apparatus of claim 50, wherein the means for performing spatial processing on the received symbols comprises means for performing spatial processing on received symbols for each of at least two symbol periods with the spatial filter matrix to obtain detected symbols for the symbol period. 